/*
 * CS_GUILD_LIST.cpp
 *
 *  Created on: 2014. 7. 31.
 *      Author: spencer
 */






#include "../../User.h"
#include "../../Command.h"
#include "../../Proxy.h"

#include "../protocol/Guild.h"

namespace ProjectZ { namespace NCommand {

void Command::CS_GUILD_LIST(User * pUser, ::Network::Packet * pPacket)
{
/*
 길드 리스트 요청  - 허광우 /-랭킹여부
CS_GUIlD_LIST						0x3224
{
	u8 	u8list_type;		// 0 일반 리스트, 1 랭킹 리스트
	u16 u16page;
}

SC_GUILD_LIST						0x3225
{
	s16				s16ack;						/// ACK_OK: 성공
												/// ACK_ERROR: 리스트 조회 조건 없음

	u8				u8count;					/// 최대 20개
	{
	u32				u32guild_seq;				//길드번호
	str				strGuild_name;				//길드명
	str				strGuild_master_nickname;	//길마 닉네임
	u16				u16Guild_master_lv;			//길마 레벨

	u8				u8Is_recruit;				//길드원 모집 여부 //0: 모집중 아님, 1:모집중   2:모집중 암호필요

	//s8				s8Guild_icon;				//계급 아이콘 index (-1: 없음)

	u32				u32Guild_point;				//현재 길드 포인트
	u32				u32Guild_pre_point;			//갱신 이전 길드 포인트
	u8				u8Guild_level;				//길드등급 (길드없음 0, 길드 등급에 따라 1~6)

	u8				u32Guild_max_member;		//길드 최대 인원
	u8				u32Guild_current_member;	//길드 현재 인원

	str				strGuild_message;			//길드 모집글

	//u8				u8GuildJoinState;			//조회자의 길드 가입상태 0: 미가입 1:가입신청 중 2:가입됨	삭제

	}
}

*/
	PREPARE_PACKET;
	uint8_t listType = 0;
	uint16_t page = 0;

	*pPacket >> listType >> page;


	GuildListSyn syn;
	syn.user_seq = pUser->GetUserSeq();
	syn.type = listType;
	syn.page = page;

//	DEBUGLOG("%s> user_seq: %d, type: %d, page: %d"
//			, __FUNCTION__
//			, syn.user_seq, syn.type, syn.page
//			);

//	::Network::Packet * pAck = ::Network::GETPACKETPOOL()->SEND_NEW();
//	*pAck << static_cast<int16_t>(ACK_OK);
//	*pAck << static_cast<uint8_t>(0);
//	pAck->MakePacket(CMD_SC_GUIlD_LIST);
//	pUser->Send(pAck);
//	return;

	if (false == NProxy::SendGuildServer(pUser, syn))
	{
		::Network::Packet * pAck = ::Network::GETPACKETPOOL()->SEND_NEW();
		*pAck << static_cast<int16_t>(ACK_UNKNOWN_ERROR);
		pAck->MakePacket(CMD_SC_GUIlD_LIST);
		pUser->Send(pAck);
		return;
	}
}

} /*NCommand*/ } /*ProjectZ*/
